<?

// Код обработчика
function ahah_addrow(){
	
	// Строим новую форму
	$form_state = array('submitted' => FALSE);
	$form_build_id = $_POST['form_build_id'];
	
	// Получаем текущую форму из кэша
	$form = form_get_cache($form_build_id, $form_state);
	
	for( $i = 1; $i < variable_get('conference_max_users', 10); $i++) {
	
		if ( !isset($_POST['user_name_'.$i]) &&  !isset($_POST['user_num_'.$i])) {
			$form['conf']['users']['user_name_'.$i] = array(
				'#type' => 'textfield',
				'#size'=> 20,
				'#maxlength' => 20
			);
			
			$form['conf']['users']['user_num_'.$i] = array(
				'#type' => 'textfield',
				'#size'=> 20,
				'#maxlength' => 20
			);
			
			break;
		}
	}
	// и сохраняем в кэше
	form_set_cache($form_build_id, $form, $form_state);
	
	$form += array(
		'#post' => $_POST,
		'#programmed' => FALSE,
	);
	
	// Перестраиваем форму
	$form = form_builder('conference_add_form', $form, $form_state);
	
	// Рендер элемента формы и отправка клиенту
	if ( $i != variable_get('conference_max_users', 10)) {
		$output = '<tr id="user-table-wrapper" class="odd"><td>'.drupal_render($form['conf']['users']['user_name_'.$i]).'</td><td>';
		$output .= drupal_render($form['conf']['users']['user_num_'.$i]).'</td></tr>';
	} else {
		$output = '';
	}
	
	drupal_json(array('status' => TRUE, 'data' => $output));
}

// Код обработчика
function ahah_delrow(){
	
	// Строим новую форму
	$form_state = array('submitted' => FALSE);
	$form_build_id = $_POST['form_build_id'];
	
	// Получаем текущую форму из кэша
	$form = form_get_cache($form_build_id, $form_state);
	
	for( $i = 2; $i < variable_get('conference_max_users', 10); $i++) {
	
		if ( !isset($_POST['user_name_'.$i]) &&  !isset($_POST['user_num_'.$i])) {
			unset($form['conf']['users']['user_name_'.$i-1]);
			unset($form['conf']['users']['user_num_'.$i-1]);
			unset($_POST['user_name_'.$i-1]);
			unset($_POST['user_num_'.$i-1]);
			break;
		}
	}
	// и сохраняем в кэше
	form_set_cache($form_build_id, $form, $form_state);
	
	$form += array(
		'#post' => $_POST,
		'#programmed' => FALSE,
	);
	
	//print_r($form);
	
	// Перестраиваем форму
	$form = form_builder('conference_add_form', $form, $form_state);

	// Рендер элемента формы и отправка клиенту
	//$output = '<tr id="user-table-wrapper" class="odd"><td>'.drupal_render($form['conf']['users']['user_name_'.$i]).'</td><td>';
	//$output .= drupal_render($form['conf']['users']['user_num_'.$i]).'</td></tr>';

	drupal_json(array('status' => TRUE, 'data' => ''));
}

?>